The development of multiple communication systems has led to situations where it is desirable to have a single device that is able to participate in multiple network contexts. At a fundamental level, a wireless local area network (WLAN) may include a network configuration between at least one station and an access point to form a basic service set (BSS) in a standard Institute of Electrical and Electronic Engineers (IEEE) 802.11 infrastructure network model. However, an 802.11 wireless transceiver of a given device may be used in numerous other contexts. In one example, a single device may simultaneously be associated with two or more discrete BSSs. In another example, two or more wireless devices may communicate directly without a dedicated management device fulfilling the role of an access point in an ad hoc or peer-to-peer based communication, which may include WiFi Direct™ P2P and others. Further, a given device that may normally operate as a station, may also be configured to function as an access point to manage its own BSS. Additional network configurations are also possible, including Tunneled Direct Link Setup (TDLS) which utilizes direct links between stations through an access point.
Thus, there exists a need for a single wireless communications device capable of operating in multiple contexts at the same time. The aspect of simultaneous function in multiple contexts may generally be referred to as concurrency. In one example, it may be desirable for a single wireless device to maintain a link to two or more independent BSSs, each of which requires its own schedule of communication events in order to maintain the links. However, concurrent operation may also involve a single device participating as one type of network node in a first context and a different type in a second context. For example, a device communicating in one network context as a station may simultaneously establish a peer-to-peer connection with another device or a single device may function as an access point with respect to a first BSS and as a station with respect to a second BSS. As such, it would be desirable for a single physical device to participate in multiple network contexts simultaneously while employing the same physical transceiver.
In order to provide concurrency with a single transceiver, some mechanism must be employed to allow the device to perform at least a minimum number of tasks required to provide operational functionality in each network context. This may include fulfilling at least the minimum exchange of information for operation, such as the requirement for a station to respond to an access point beacon at least once within a given period in order to maintain the link. Similarly, a device acting as an access point may need to transmit beacons with sufficient regularity and respond to requests to maintain a link. As a practical matter, this type of sporadic communication represents an extreme minimum case as the existence of a normal active communication link will typically involve a more continual exchange of information between the nodes. In addition, a device may need to perform other tasks to provide proper operation in a given network context, such as channel scanning, device discovery or channel assessment. Accordingly, time division concurrency strategies typically involve identifying periods of time when operation is not required in a first network context and then attempting to satisfy required tasks in the second network context during those periods. For the purposes of this disclosure, a period of time when the transceiver may be able to switch away from one network context may be known as an opportunity instant.
One conventional form of concurrency involves the power save mode of a conventional 802.11 station. Stations operating in active mode typically receive the access point's beacon every beacon interval. Alternatively, the station may enter a sleep mode for a given listen interval. A properly configured device may use the listen interval in one network context as an opportunity instant to satisfy requirements of other network contexts. However, listen intervals generally represent poor opportunity instants because they are rigidly fixed periods of time determined with respect to one network context, but unrelated to any conditions existing with respect to the other network contexts. Thus, if there is a specific window in which the other network context must be engaged that does not align with the listen interval, such methods do not provide effective concurrency.
Further, as indicated above, typical communications links that are active involve relatively continual exchange of information which exacerbate the issues noted above. With regard to the use of the listen interval as an opportunity instant, a device in active traffic mode may never enter sleep mode and thus provide no potential for maintaining operation in the other network contexts. Further, existing 802.11 carrier sense access protocols also reduce the potential for opportunity instants. A station may either be in downlink mode and receiving or awaiting frames, or in an uplink mode which is under the control of a distributed channel access backoff function, such as enhanced distributed channel access (EDCA), with regard to reserving a channel. Thus, if a single device is attempting to operate in traffic mode for more than one network context at a time, providing sufficient opportunity instants may present significant challenges under conventional strategies.
Often, conventional concurrency techniques rely on enforcing a preemptive lower priority with regard to one network context, significantly degrading performance in that network context, to service the device in another network context. Indeed, as the number of network contexts increases, these problems are amplified. Further, enforcing priority often requires suspending activity within a first network context by explicitly signaling entrance to a power saving mode to obtain the opportunity instant to service the other network context tasks, increasing the overhead in bandwidth of the network and latency associated with the protocol message exchanges using the EDCA rules. In turn, this also places additional strain on the access point, including the requirement that it start buffering data for the device. The greater the number of such devices in the network, the more significant the impact on the access point
Accordingly, what has been needed are systems and methods for enhancing the concurrency of a wireless device operating in multiple network contexts while the device is actively connected with one or more other network nodes. This disclosure satisfies this and other goals.